package test;
/**
 * 6.	完全排列生成的问题
	从n个不同的元素中任取m(m<=n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列.当m=n时所有的排列情况叫个全排列..
	如1,2,3三个元素的全排列为:
123 132 213 231 312 321

 */
public class AllSort {
	public static void main(String[] args){
		int[] arr={1,2,3,4};
		allSort(arr,0);
	}
	public static void allSort(int[] arr,int start){
		if(start>=arr.length-1){
			for(int i=0;i<arr.length;i++){
				System.out.print(arr[i]);
			}
			System.out.println();
		}else{
			for(int i=start;i<arr.length;i++){
				int tmp=arr[i];
				arr[i]=arr[start];
				arr[start]=tmp;
				allSort(arr,start+1);
				tmp=arr[i];
				arr[i]=arr[start];
				arr[start]=tmp;
			}
		}
	}
}
